#pragma warning disable 108
using System;
using System.Runtime.InteropServices;
using System.Collections.Generic;
using Cephei;
using Cephei.Generic;
using Cephei.QL.Math;
namespace Cephei.QL.Models.Marketmodels.Pathwisegreeks
{
     // <summary> 
	// ! Pass in a market model, a list of instruments, and possible bumps.  Get out pseudo-root bumps that shift each implied vol by one percent, and leave the other instruments fixed.  If the contribution of an instrument is too correlated with other instruments used, discard it.
	// </summary>
    [Guid ("A0D17B62-145C-475a-BCEE-0DD42E1F50FA"),ComVisible(true)]
	public interface IOrthogonalizedBumpFinder 
	{
		///////////////////////////////////////////////////////////////
        // Methods
        //
        
		 IOrthogonalizedBumpFinder GetVegaBumps(Cephei.IMatrix<Cephei.QL.Math.IMatrix> theBumps);
    }

    // <summary> 
	// ! Pass in a market model, a list of instruments, and possible bumps.  Get out pseudo-root bumps that shift each implied vol by one percent, and leave the other instruments fixed.  If the contribution of an instrument is too correlated with other instruments used, discard it. Factory
	// </summary>
   	[ComVisible(true)]
    public interface IOrthogonalizedBumpFinder_Factory // : Collection_Factory<IOrthogonalizedBumpFinder, ICell<IOrthogonalizedBumpFinder>>
    {
        ///////////////////////////////////////////////////////////////
        // Factory methods
        //
    }
}

